This rule applies whenever an if statement is followed by one or more else if statements; the final else if
should be followed by an else statement.
The requirement for a final else statement is defensive programming.
The else statement should either take appropriate action or contain a suitable comment as to why no action is taken. This is
consistent with the requirement to have a final default clause in a switch statement.
Noncompliant code example
if x == 0 {
doSomething()
} else if x == 1 {
doSomethingElse()
}
Compliant solution
if x == 0 {
doSomething()
} else if x == 1 {
doSomethingElse()
} else {
NSException(name:"IllegalStateException", reason:"Unreachable else clause is reached", userInfo:nil).raise()
}